package com.jghz.transfer.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Version;

import com.bstek.dorado.annotation.PropertyDef;

/**
 * tbplateformcash:资金流水单
 */
@Entity
@Table(name = "tbplateformcash")
public class Tbplateformcash implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 主键:主键
	 */
	@PropertyDef(label = "主键", description = "主键:主键")
	private String id;

	/**
	 * 公司别:公司别
	 */
	@PropertyDef(label = "公司别", description = "公司别:公司别")
	private String compId;

	/**
	 * 无车承运人物流交换代码:无车承运人物流交换代码
	 */
	@PropertyDef(label = "无车承运人物流交换代码", description = "无车承运人物流交换代码:无车承运人物流交换代码")
	private String senderCode;

	/**
	 * 资金流水单号:资金流水单号
	 */
	@PropertyDef(label = "资金流水单号", description = "资金流水单号:资金流水单号")
	private String documentNumber;

	/**
	 * 承运人:承运人
	 */
	@PropertyDef(label = "承运人", description = "承运人:承运人")
	private String carrier;

	/**
	 * 车辆牌照号:车辆牌照号
	 */
	@PropertyDef(label = "车辆牌照号", description = "车辆牌照号:车辆牌照号")
	private String vehicleNumber;

	/**
	 * 牌照类型代码:牌照类型代码
	 */
	@PropertyDef(label = "牌照类型代码", description = "牌照类型代码:牌照类型代码")
	private String licensePlateTypeCode;

	/**
	 * 托运单号:托运单号
	 */
	@PropertyDef(label = "托运单号", description = "托运单号:托运单号")
	private String shippingNoteNumber;

	/**
	 * 备注:备注
	 */
	@PropertyDef(label = "备注", description = "备注:备注")
	private String remark;

	/**
	 * 付款方式代码:付款方式代码
	 */
	@PropertyDef(label = "付款方式代码", description = "付款方式代码:付款方式代码")
	private String paymentMeansCode;

	/**
	 * 银行代码:银行代码
	 */
	@PropertyDef(label = "银行代码", description = "银行代码:银行代码")
	private String bankCode;

	/**
	 * 流水号/序列号:流水号/序列号
	 */
	@PropertyDef(label = "流水号/序列号", description = "流水号/序列号:流水号/序列号")
	private String sequenceCode;

	/**
	 * 货币金额:货币金额
	 */
	@PropertyDef(label = "货币金额", description = "货币金额:货币金额")
	private BigDecimal monetaryAmount;

	/**
	 * 资金流水发生时间:资金流水发生时间
	 */
	@PropertyDef(label = "资金流水发生时间", description = "资金流水发生时间:资金流水发生时间")
	private String dateTime;

	/**
	 * 发送人:发送人
	 */
	@PropertyDef(label = "发送人", description = "发送人:发送人")
	private String sendEmp;

	/**
	 * 发送时间:发送时间
	 */
	@PropertyDef(label = "发送时间", description = "发送时间:发送时间")
	private Date sendTime;

	/**
	 * 发送状态:发送状态
	 */
	@PropertyDef(label = "发送状态", description = "发送状态:发送状态")
	private String status;

	/**
	 * 创建人:创建人
	 */
	@PropertyDef(label = "创建人", description = "创建人:创建人")
	private String createEmp;

	/**
	 * 创建时间:创建时间
	 */
	@PropertyDef(label = "创建时间", description = "创建时间:创建时间")
	private Date createDate;

	/**
	 * 修改人:修改人
	 */
	@PropertyDef(label = "修改人", description = "修改人:修改人")
	private String updateEmp;

	/**
	 * 修改时间:修改时间
	 */
	@PropertyDef(label = "修改时间", description = "修改时间:修改时间")
	private Date updateDate;

	/**
	 * 版本号:版本号
	 */
	@PropertyDef(label = "版本号", description = "版本号:版本号")
	private int version;

	public Tbplateformcash() {
		super();
	}

	public Tbplateformcash(String id, String compId, String senderCode, String documentNumber, String carrier,
			String vehicleNumber, String licensePlateTypeCode, String shippingNoteNumber, String remark,
			String paymentMeansCode, String bankCode, String sequenceCode, BigDecimal monetaryAmount, String dateTime,
			String sendEmp, Date sendTime, String status, String createEmp, Date createDate, String updateEmp,
			Date updateDate, int version) {
		super();
		this.id = id;
		this.compId = compId;
		this.senderCode = senderCode;
		this.documentNumber = documentNumber;
		this.carrier = carrier;
		this.vehicleNumber = vehicleNumber;
		this.licensePlateTypeCode = licensePlateTypeCode;
		this.shippingNoteNumber = shippingNoteNumber;
		this.remark = remark;
		this.paymentMeansCode = paymentMeansCode;
		this.bankCode = bankCode;
		this.sequenceCode = sequenceCode;
		this.monetaryAmount = monetaryAmount;
		this.dateTime = dateTime;
		this.sendEmp = sendEmp;
		this.sendTime = sendTime;
		this.status = status;
		this.createEmp = createEmp;
		this.createDate = createDate;
		this.updateEmp = updateEmp;
		this.updateDate = updateDate;
		this.version = version;
	}

	public void setId(String id) {
		this.id = id;
	}

	@Id
	@Column(name = "ID_", length = 50, nullable = false)
	public String getId() {
		return id;
	}

	public void setCompId(String compId) {
		this.compId = compId;
	}

	@Column(name = "COMP_ID_", length = 10)
	public String getCompId() {
		return compId;
	}

	public void setSenderCode(String senderCode) {
		this.senderCode = senderCode;
	}

	@Column(name = "SENDER_CODE_", length = 20)
	public String getSenderCode() {
		return senderCode;
	}

	public void setDocumentNumber(String documentNumber) {
		this.documentNumber = documentNumber;
	}

	@Column(name = "DOCUMENT_NUMBER_", length = 50)
	public String getDocumentNumber() {
		return documentNumber;
	}

	public void setCarrier(String carrier) {
		this.carrier = carrier;
	}

	@Column(name = "CARRIER_", length = 10)
	public String getCarrier() {
		return carrier;
	}

	public void setVehicleNumber(String vehicleNumber) {
		this.vehicleNumber = vehicleNumber;
	}

	@Column(name = "VEHICLE_NUMBER_", length = 20)
	public String getVehicleNumber() {
		return vehicleNumber;
	}

	public void setLicensePlateTypeCode(String licensePlateTypeCode) {
		this.licensePlateTypeCode = licensePlateTypeCode;
	}

	@Column(name = "LICENSE_PLATE_TYPE_CODE_", length = 10)
	public String getLicensePlateTypeCode() {
		return licensePlateTypeCode;
	}

	public void setShippingNoteNumber(String shippingNoteNumber) {
		this.shippingNoteNumber = shippingNoteNumber;
	}

	@Column(name = "SHIPPING_NOTE_NUMBER_", length = 20)
	public String getShippingNoteNumber() {
		return shippingNoteNumber;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@Column(name = "REMARK_", length = 100)
	public String getRemark() {
		return remark;
	}

	public void setPaymentMeansCode(String paymentMeansCode) {
		this.paymentMeansCode = paymentMeansCode;
	}

	@Column(name = "PAYMENT_MEANS_CODE_", length = 100)
	public String getPaymentMeansCode() {
		return paymentMeansCode;
	}

	public void setBankCode(String bankCode) {
		this.bankCode = bankCode;
	}

	@Column(name = "BANK_CODE_", length = 100)
	public String getBankCode() {
		return bankCode;
	}

	public void setSequenceCode(String sequenceCode) {
		this.sequenceCode = sequenceCode;
	}

	@Column(name = "SEQUENCE_CODE_", length = 100)
	public String getSequenceCode() {
		return sequenceCode;
	}

	public void setMonetaryAmount(BigDecimal monetaryAmount) {
		this.monetaryAmount = monetaryAmount;
	}

	@Column(name = "MONETARY_AMOUNT_")
	public BigDecimal getMonetaryAmount() {
		return monetaryAmount;
	}

	public void setDateTime(String dateTime) {
		this.dateTime = dateTime;
	}

	@Column(name = "DATE_TIME_", length = 20)
	public String getDateTime() {
		return dateTime;
	}

	public void setSendEmp(String sendEmp) {
		this.sendEmp = sendEmp;
	}

	@Column(name = "SEND_EMP_", length = 20)
	public String getSendEmp() {
		return sendEmp;
	}

	public void setSendTime(Date sendTime) {
		this.sendTime = sendTime;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "SEND_TIME_")
	public Date getSendTime() {
		return sendTime;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	@Column(name = "STATUS_", length = 1)
	public String getStatus() {
		return status;
	}

	public void setCreateEmp(String createEmp) {
		this.createEmp = createEmp;
	}

	@Column(name = "CREATE_EMP_", length = 50)
	public String getCreateEmp() {
		return createEmp;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "CREATE_DATE_")
	public Date getCreateDate() {
		return createDate;
	}

	public void setUpdateEmp(String updateEmp) {
		this.updateEmp = updateEmp;
	}

	@Column(name = "UPDATE_EMP_", length = 50)
	public String getUpdateEmp() {
		return updateEmp;
	}

	public void setUpdateDate(Date updateDate) {
		this.updateDate = updateDate;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "UPDATE_DATE_")
	public Date getUpdateDate() {
		return updateDate;
	}

	public void setVersion(int version) {
		this.version = version;
	}

	@Version
	@Column(name = "VERSION")
	public int getVersion() {
		return version;
	}

	@Override
	public String toString() {
		return "Tbplateformcash [id=" + id + ",compId=" + compId + ",senderCode=" + senderCode + ",documentNumber="
				+ documentNumber + ",carrier=" + carrier + ",vehicleNumber=" + vehicleNumber + ",licensePlateTypeCode="
				+ licensePlateTypeCode + ",shippingNoteNumber=" + shippingNoteNumber + ",remark=" + remark
				+ ",paymentMeansCode=" + paymentMeansCode + ",bankCode=" + bankCode + ",sequenceCode=" + sequenceCode
				+ ",monetaryAmount=" + monetaryAmount + ",dateTime=" + dateTime + ",sendEmp=" + sendEmp + ",sendTime="
				+ sendTime + ",status=" + status + ",createEmp=" + createEmp + ",createDate=" + createDate
				+ ",updateEmp=" + updateEmp + ",updateDate=" + updateDate + ",version=" + version + "]";
	}

}
